El Problema de dos lenguajes se refiere a la necesidad histórica de usar un lenguaje de alto nivel, "lento" (Python, R, MATLAB) para prototipado, solo para verse obligado a reescribir la base de código en un lenguaje de bajo nivel, "rápido" (C++, Fortran) para producción. ¿Qué podemos esperar del diseño de lenguajes modernos y las técnicas de compilación? Julia elimina esta "tasa de reescritura".
1. La brecha entre productividad y rendimiento
Los investigadores tradicionalmente sacrifican la velocidad de ejecución por facilidad de uso. Julia utiliza la compilación moderna compilación basada en LLVM para garantizar que las abstracciones de alto nivel no reduzcan la eficiencia a nivel de máquina.
2. Versatilidad y dualidad
El la sintaxis de Julia es similar a MATLAB, lo que la hace inmediatamente accesible, aunque es un lenguaje mucho más de propósito general capaz de indexación web y programación de sistemas. Además, Julia es tan útil como R en el dominio estadístico, pero es perfecta para realizar ambas estadísticas y álgebra lineal al mismo tiempo sin necesidad de extensiones en C.